YES(O(1),O(n^1)) We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { not(true()) -> false() , not(false()) -> true() , odd(0()) -> false() , odd(s(x)) -> not(odd(x)) , +(x, 0()) -> x , +(x, s(y)) -> s(+(x, y)) , +(s(x), y) -> s(+(x, y)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'matrix interpretation of dimension 1' to orient following rules strictly. Trs: { odd(s(x)) -> not(odd(x)) } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- TcT has computed the following constructor-based matrix interpretation satisfying not(EDA). [not](x1) = [1] x1 + [0] [true] = [0] [false] = [0] [odd](x1) = [1] x1 + [0] [0] = [0] [s](x1) = [1] x1 + [1] [+](x1, x2) = [1] x1 + [1] x2 + [0] This order satisfies the following ordering constraints: [not(true())] = [0] >= [0] = [false()] [not(false())] = [0] >= [0] = [true()] [odd(0())] = [0] >= [0] = [false()] [odd(s(x))] = [1] x + [1] > [1] x + [0] = [not(odd(x))] [+(x, 0())] = [1] x + [0] >= [1] x + [0] = [x] [+(x, s(y))] = [1] x + [1] y + [1] >= [1] x + [1] y + [1] = [s(+(x, y))] [+(s(x), y)] = [1] x + [1] y + [1] >= [1] x + [1] y + [1] = [s(+(x, y))] We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { not(true()) -> false() , not(false()) -> true() , odd(0()) -> false() , +(x, 0()) -> x , +(x, s(y)) -> s(+(x, y)) , +(s(x), y) -> s(+(x, y)) } Weak Trs: { odd(s(x)) -> not(odd(x)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'matrix interpretation of dimension 1' to orient following rules strictly. Trs: { +(s(x), y) -> s(+(x, y)) } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- TcT has computed the following constructor-based matrix interpretation satisfying not(EDA). [not](x1) = [1] x1 + [0] [true] = [0] [false] = [0] [odd](x1) = [1] x1 + [0] [0] = [0] [s](x1) = [1] x1 + [1] [+](x1, x2) = [2] x1 + [1] x2 + [0] This order satisfies the following ordering constraints: [not(true())] = [0] >= [0] = [false()] [not(false())] = [0] >= [0] = [true()] [odd(0())] = [0] >= [0] = [false()] [odd(s(x))] = [1] x + [1] > [1] x + [0] = [not(odd(x))] [+(x, 0())] = [2] x + [0] >= [1] x + [0] = [x] [+(x, s(y))] = [2] x + [1] y + [1] >= [2] x + [1] y + [1] = [s(+(x, y))] [+(s(x), y)] = [2] x + [1] y + [2] > [2] x + [1] y + [1] = [s(+(x, y))] We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { not(true()) -> false() , not(false()) -> true() , odd(0()) -> false() , +(x, 0()) -> x , +(x, s(y)) -> s(+(x, y)) } Weak Trs: { odd(s(x)) -> not(odd(x)) , +(s(x), y) -> s(+(x, y)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'matrix interpretation of dimension 1' to orient following rules strictly. Trs: { +(x, 0()) -> x } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- TcT has computed the following constructor-based matrix interpretation satisfying not(EDA). [not](x1) = [1] x1 + [0] [true] = [0] [false] = [0] [odd](x1) = [2] x1 + [0] [0] = [0] [s](x1) = [1] x1 + [0] [+](x1, x2) = [3] x1 + [1] x2 + [1] This order satisfies the following ordering constraints: [not(true())] = [0] >= [0] = [false()] [not(false())] = [0] >= [0] = [true()] [odd(0())] = [0] >= [0] = [false()] [odd(s(x))] = [2] x + [0] >= [2] x + [0] = [not(odd(x))] [+(x, 0())] = [3] x + [1] > [1] x + [0] = [x] [+(x, s(y))] = [3] x + [1] y + [1] >= [3] x + [1] y + [1] = [s(+(x, y))] [+(s(x), y)] = [3] x + [1] y + [1] >= [3] x + [1] y + [1] = [s(+(x, y))] We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { not(true()) -> false() , not(false()) -> true() , odd(0()) -> false() , +(x, s(y)) -> s(+(x, y)) } Weak Trs: { odd(s(x)) -> not(odd(x)) , +(x, 0()) -> x , +(s(x), y) -> s(+(x, y)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'matrix interpretation of dimension 1' to orient following rules strictly. Trs: { odd(0()) -> false() } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- TcT has computed the following constructor-based matrix interpretation satisfying not(EDA). [not](x1) = [1] x1 + [0] [true] = [0] [false] = [0] [odd](x1) = [1] x1 + [0] [0] = [1] [s](x1) = [1] x1 + [0] [+](x1, x2) = [3] x1 + [2] x2 + [0] This order satisfies the following ordering constraints: [not(true())] = [0] >= [0] = [false()] [not(false())] = [0] >= [0] = [true()] [odd(0())] = [1] > [0] = [false()] [odd(s(x))] = [1] x + [0] >= [1] x + [0] = [not(odd(x))] [+(x, 0())] = [3] x + [2] > [1] x + [0] = [x] [+(x, s(y))] = [3] x + [2] y + [0] >= [3] x + [2] y + [0] = [s(+(x, y))] [+(s(x), y)] = [3] x + [2] y + [0] >= [3] x + [2] y + [0] = [s(+(x, y))] We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { not(true()) -> false() , not(false()) -> true() , +(x, s(y)) -> s(+(x, y)) } Weak Trs: { odd(0()) -> false() , odd(s(x)) -> not(odd(x)) , +(x, 0()) -> x , +(s(x), y) -> s(+(x, y)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'matrix interpretation of dimension 1' to orient following rules strictly. Trs: { +(x, s(y)) -> s(+(x, y)) } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- TcT has computed the following constructor-based matrix interpretation satisfying not(EDA). [not](x1) = [1] x1 + [0] [true] = [0] [false] = [0] [odd](x1) = [1] x1 + [0] [0] = [0] [s](x1) = [1] x1 + [1] [+](x1, x2) = [1] x1 + [2] x2 + [2] This order satisfies the following ordering constraints: [not(true())] = [0] >= [0] = [false()] [not(false())] = [0] >= [0] = [true()] [odd(0())] = [0] >= [0] = [false()] [odd(s(x))] = [1] x + [1] > [1] x + [0] = [not(odd(x))] [+(x, 0())] = [1] x + [2] > [1] x + [0] = [x] [+(x, s(y))] = [1] x + [2] y + [4] > [1] x + [2] y + [3] = [s(+(x, y))] [+(s(x), y)] = [1] x + [2] y + [3] >= [1] x + [2] y + [3] = [s(+(x, y))] We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { not(true()) -> false() , not(false()) -> true() } Weak Trs: { odd(0()) -> false() , odd(s(x)) -> not(odd(x)) , +(x, 0()) -> x , +(x, s(y)) -> s(+(x, y)) , +(s(x), y) -> s(+(x, y)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'matrix interpretation of dimension 1' to orient following rules strictly. Trs: { not(true()) -> false() , not(false()) -> true() } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- TcT has computed the following constructor-based matrix interpretation satisfying not(EDA). [not](x1) = [1] x1 + [1] [true] = [0] [false] = [0] [odd](x1) = [1] x1 + [0] [0] = [0] [s](x1) = [1] x1 + [1] [+](x1, x2) = [2] x1 + [1] x2 + [0] This order satisfies the following ordering constraints: [not(true())] = [1] > [0] = [false()] [not(false())] = [1] > [0] = [true()] [odd(0())] = [0] >= [0] = [false()] [odd(s(x))] = [1] x + [1] >= [1] x + [1] = [not(odd(x))] [+(x, 0())] = [2] x + [0] >= [1] x + [0] = [x] [+(x, s(y))] = [2] x + [1] y + [1] >= [2] x + [1] y + [1] = [s(+(x, y))] [+(s(x), y)] = [2] x + [1] y + [2] > [2] x + [1] y + [1] = [s(+(x, y))] We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(1)). Weak Trs: { not(true()) -> false() , not(false()) -> true() , odd(0()) -> false() , odd(s(x)) -> not(odd(x)) , +(x, 0()) -> x , +(x, s(y)) -> s(+(x, y)) , +(s(x), y) -> s(+(x, y)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(1)) Empty rules are trivially bounded Hurray, we answered YES(O(1),O(n^1))